<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!-- Copyright 1997 The Open Group, All Rights Reserved -->
<title>&lt;aio.h&gt;</title>
</head><body bgcolor=white>
<center>
<font size=2>
The Single UNIX &reg; Specification, Version 2<br>
Copyright &copy; 1997 The Open Group

</font></center><hr size=2 noshade>
<h4><a name = "tag_000_001_098">&nbsp;</a>NAME</h4><blockquote>
aio.h - asynchronous input and output
(<b>REALTIME</b>)
</blockquote><h4><a name = "tag_000_001_099">&nbsp;</a>SYNOPSIS</h4><blockquote>
<pre><code>

#include &lt;aio.h&gt;
</code>
</pre>
</blockquote><h4><a name = "tag_000_001_100">&nbsp;</a>DESCRIPTION</h4><blockquote>
The
<i>&lt;aio.h&gt;</i>
header defines the
<b>aiocb</b>
structure which includes at least the following members:
<pre>
<code>
int             aio_fildes     file descriptor
off_t           aio_offset     file offset
volatile void*  aio_buf        location of buffer
size_t          aio_nbytes     length of transfer
int             aio_reqprio    request priority offset
struct sigevent aio_sigevent   signal number and value
int             aio_lio_opcode operation to be performed
</code>
</pre>
<p>
This header also includes the following constants:
<pre>
AIO_CANCELED
AIO_NOTCANCELED
AIO_ALLDONE
LIO_WAIT
LIO_NOWAIT
LIO_READ
LIO_WRITE
LIO_NOP
</pre>
<p>
The following are declared as functions and may also be declared as
macros.  
Function prototypes must be provided for use with an ISO C
compiler.
<pre>
<code>
int      <a href="aio_cancel.html">aio_cancel</a>(int, struct aiocb *);
int      <a href="aio_error.html">aio_error</a>(const struct aiocb *);
int      <a href="aio_fsync.html">aio_fsync</a>(int, struct aiocb *);
int      <a href="aio_read.html">aio_read</a>(struct aiocb *);
ssize_t  <a href="aio_return.html">aio_return</a>(struct aiocb *);
int      <a href="aio_suspend.html">aio_suspend</a>(const struct aiocb *const[], int,
             const struct timespec *);
int      <a href="aio_write.html">aio_write</a>(struct aiocb *);
int      <a href="lio_listio.html">lio_listio</a>(int, struct aiocb *const[], int,
             struct sigevent *);
</code>
</pre>
<p>
Inclusion of the
<i>&lt;aio.h&gt;</i>
header may make visible symbols defined in the headers
<i><a href="fcntl.h.html">&lt;fcntl.h&gt;</a></i>,
<i><a href="signal.h.html">&lt;signal.h&gt;</a></i>,
<i><a href="systypes.h.html">&lt;sys/types.h&gt;</a></i>
and
<i><a href="time.h.html">&lt;time.h&gt;</a></i>.
</blockquote><h4><a name = "tag_000_001_101">&nbsp;</a>APPLICATION USAGE</h4><blockquote>
None.
</blockquote><h4><a name = "tag_000_001_102">&nbsp;</a>FUTURE DIRECTIONS</h4><blockquote>
None.
</blockquote><h4><a name = "tag_000_001_103">&nbsp;</a>SEE ALSO</h4><blockquote>
<i><a href="fsync.html">fsync()</a></i>,
<i><a href="lseek.html">lseek()</a></i>,
<i><a href="read.html">read()</a></i>,
<i><a href="write.html">write()</a></i>,
<i><a href="fcntl.h.html">&lt;fcntl.h&gt;</a></i>,
<i><a href="signal.h.html">&lt;signal.h&gt;</a></i>,
<i><a href="systypes.h.html">&lt;sys/types.h&gt;</a></i>,
<i><a href="time.h.html">&lt;time.h&gt;</a></i>.
<br>
</blockquote><hr size=2 noshade>
<center><font size=2>
UNIX &reg; is a registered Trademark of The Open Group.<br>
Copyright &copy; 1997 The Open Group
<br> [ <a href="../index.html">Main Index</a> | <a href="../xshix.html">XSH</a> | <a href="../xcuix.html">XCU</a> | <a href="../xbdix.html">XBD</a> | <a href="../cursesix.html">XCURSES</a> | <a href="../xnsix.html">XNS</a> ]

</font></center><hr size=2 noshade>
</body></html>
